package com.study.mybatisplus.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;

/**
 * <p>
 * 视频库
 * </p>
 *
 * @author flwu
 * @since 2020-03-20
 */
@TableName("tbl_video")
public class Video implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 唯一编码
     */
    private String uniqueCode;

    /**
     * 原视频地址
     */
    private String url;

    /**
     * 转码地址
     */
    private String transcodeUrl;

    /**
     * 视频封面地址
     */
    private String coverUrl;

    /**
     * 时长
     */
    private BigDecimal duration;

    /**
     * 宽度
     */
    private Integer width;

    /**
     * 高度
     */
    private Integer height;

    /**
     * 大小 kb
     */
    private Integer size;

    /**
     * 状态[1:待转码;2:已完成]
     */
    private Boolean status;

    /**
     * 客户端通知时间
     */
    private LocalDateTime notifyDatetime;

    /**
     * 主动同步时间
     */
    private LocalDateTime syncDatetime;

    /**
     * 最后一次回调时间
     */
    private LocalDateTime callbackDatetime;

    private LocalDateTime createDatetime;

    private LocalDateTime updateDatetime;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }
    public String getUniqueCode() {
        return uniqueCode;
    }

    public void setUniqueCode(String uniqueCode) {
        this.uniqueCode = uniqueCode;
    }
    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }
    public String getTranscodeUrl() {
        return transcodeUrl;
    }

    public void setTranscodeUrl(String transcodeUrl) {
        this.transcodeUrl = transcodeUrl;
    }
    public String getCoverUrl() {
        return coverUrl;
    }

    public void setCoverUrl(String coverUrl) {
        this.coverUrl = coverUrl;
    }
    public BigDecimal getDuration() {
        return duration;
    }

    public void setDuration(BigDecimal duration) {
        this.duration = duration;
    }
    public Integer getWidth() {
        return width;
    }

    public void setWidth(Integer width) {
        this.width = width;
    }
    public Integer getHeight() {
        return height;
    }

    public void setHeight(Integer height) {
        this.height = height;
    }
    public Integer getSize() {
        return size;
    }

    public void setSize(Integer size) {
        this.size = size;
    }
    public Boolean getStatus() {
        return status;
    }

    public void setStatus(Boolean status) {
        this.status = status;
    }
    public LocalDateTime getNotifyDatetime() {
        return notifyDatetime;
    }

    public void setNotifyDatetime(LocalDateTime notifyDatetime) {
        this.notifyDatetime = notifyDatetime;
    }
    public LocalDateTime getSyncDatetime() {
        return syncDatetime;
    }

    public void setSyncDatetime(LocalDateTime syncDatetime) {
        this.syncDatetime = syncDatetime;
    }
    public LocalDateTime getCallbackDatetime() {
        return callbackDatetime;
    }

    public void setCallbackDatetime(LocalDateTime callbackDatetime) {
        this.callbackDatetime = callbackDatetime;
    }
    public LocalDateTime getCreateDatetime() {
        return createDatetime;
    }

    public void setCreateDatetime(LocalDateTime createDatetime) {
        this.createDatetime = createDatetime;
    }
    public LocalDateTime getUpdateDatetime() {
        return updateDatetime;
    }

    public void setUpdateDatetime(LocalDateTime updateDatetime) {
        this.updateDatetime = updateDatetime;
    }

    @Override
    public String toString() {
        return "Video{" +
            "id=" + id +
            ", uniqueCode=" + uniqueCode +
            ", url=" + url +
            ", transcodeUrl=" + transcodeUrl +
            ", coverUrl=" + coverUrl +
            ", duration=" + duration +
            ", width=" + width +
            ", height=" + height +
            ", size=" + size +
            ", status=" + status +
            ", notifyDatetime=" + notifyDatetime +
            ", syncDatetime=" + syncDatetime +
            ", callbackDatetime=" + callbackDatetime +
            ", createDatetime=" + createDatetime +
            ", updateDatetime=" + updateDatetime +
        "}";
    }
}
